package main

import (
	"fmt"
	"time"
)

func main() {
	//testArr()
	testArr2()
}

func testSleep() {
	go func() {
		for {
			time.Sleep(1 * time.Second)
			fmt.Println("你好", time.Now())
		}
	}()
	fmt.Println("hello world")
	for {

	}
}

func testArr() {
	nums1 := [5]int{1, 2, 3, 4, 5}
	nums2 := make([]int, 3)
	nums2 = append(nums2, 10)
	fmt.Println(nums1) //[1 2 3 4 5]
	fmt.Println(nums2) //[0 0 0 10]
}

func testArr2() {
	nums1 := []int{1, 2, 3, 4, 5}
	nums2 := make([]int, 3)
	copy(nums2, nums1) //传入的参数是slice，不是arr
	fmt.Println(nums1) //[1 2 3 4 5]
	fmt.Println(nums2) //[1 2 3]

	nums3 := []int{1, 2, 3, 4, 5}
	nums4 := []int{7, 8, 9}
	copy(nums4[1:], nums3[3:]) //将nums3的一部分拷贝到nums4的一部分
	fmt.Println(nums3)         //[1 2 3 4 5]
	fmt.Println(nums4)         //[7 4 5]

}
